#include "xiaozhi_event_handler.h"
#include "../application.h"
#include "../event_handler.h"

bool XiaoZhiEventHandler::HandleEvent(uint32_t event_bits) {
    
    /** 
     * ！！！注意：耗时长的处理不要在此执行，以免阻塞 ！！！
     * 不涉及UI界面操作的事件处理可以试情况单独建FreeRTOS任务处理。
     * 耗时长的事件处理建议做好实现拆分（计算部分、显示部分）
     */
    auto& app = Application::GetInstance();

    if (event_bits & kEventSendAudio) {
        
        
        event_bits = event_bits & (~kEventSendAudio);
        return true;
    }

    if (event_bits & kEventWakeWordDetected) {
        
        
        event_bits = event_bits & (~kEventWakeWordDetected);
        return true;
    }

    if (event_bits & kEventVadChange) {
        
        
        event_bits = event_bits & (~kEventVadChange);
        return true;
    }

    return EventHandler::HandleEvent(event_bits);

}